Skip to content

build(docker): migrate image to Debian bookworm-slim#19

Merged
jkyberneees merged 1 commit into
mainfrom
docker/debian-slim-migration
Jun 6, 2026
Merged

build(docker): migrate image to Debian bookworm-slim#19
jkyberneees merged 1 commit into
mainfrom
docker/debian-slim-migration

Conversation

@jkyberneees
Copy link
Copy Markdown
Contributor

Move the whisper and runtime stages from Alpine to debian:bookworm-slim (glibc), keeping the Go build stage on golang:1.25-alpine since the binary is CGO_ENABLED=0 static and runs unchanged on the Debian runtime.

  • runtime/whisper: apt-get with --no-install-recommends, Debian package names (libstdc++6), gh from the official apt repo, useradd for the non-root odek user.
  • agent toolchains: Python 3 + python3-venv (PEP 668), Go from the official tarball, Bun glibc build.
  • whisper: add -DGGML_NATIVE=OFF. Debian's GCC 12 fails to inline FP16 NEON intrinsics (vfmaq_f16, "target specific option mismatch") under the default -mcpu=native on arm64. A fixed baseline arch sidesteps it, builds on amd64 and arm64, and keeps the image reproducible.

Verified: full image builds; Debian 12 base; odek (static) and whisper-cli run; gh/git/ffmpeg/python3/go/bun present; runs as odek.

Move the whisper and runtime stages from Alpine to debian:bookworm-slim
(glibc), keeping the Go build stage on golang:1.25-alpine since the binary
is CGO_ENABLED=0 static and runs unchanged on the Debian runtime.

- runtime/whisper: apt-get with --no-install-recommends, Debian package
  names (libstdc++6), gh from the official apt repo, useradd for the
  non-root odek user.
- agent toolchains: Python 3 + python3-venv (PEP 668), Go from the
  official tarball, Bun glibc build.
- whisper: add -DGGML_NATIVE=OFF. Debian's GCC 12 fails to inline FP16
  NEON intrinsics (vfmaq_f16, "target specific option mismatch") under
  the default -mcpu=native on arm64. A fixed baseline arch sidesteps it,
  builds on amd64 and arm64, and keeps the image reproducible.

Verified: full image builds; Debian 12 base; odek (static) and
whisper-cli run; gh/git/ffmpeg/python3/go/bun present; runs as odek.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@jkyberneees jkyberneees merged commit bb20bd6 into main Jun 6, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant